Data storage device and operating method thereof

ABSTRACT

A data storage device includes a nonvolatile memory device including dies including word line groups in which word lines are grouped; and a controller. The controller includes a word line health rating logic configured to determine a health rating of each word line and a health rating of each word line group based on state information on each of health rating factors associated with the word lines; a memory including a word line health rating table in which the health rating of each word line and the health rating of each word line group are stored; and a mapping logic configured to generate a management target logical super block by mapping one word line group having a lowest health rating and word line groups having a highest health rating, and generate a normal logical super block by mapping word line groups having intermediate health ratings.

CROSS-REFERENCES TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/110,356 filed on Aug. 23, 2018, which claims benefits of priority ofKorean Patent Application No. 10-2018-0003753 filed on Jan. 11, 2018.The disclosure of each of the foregoing application is incorporatedherein by reference in its entirety.

BACKGROUND 1. Technical Field

Various embodiments generally relate to a semiconductor device, and,more particularly, to a data storage device and an operating methodthereof.

2. Related Art

Recently, the paradigm for the computer environment has been changedinto ubiquitous computing so that computer systems can be used anytimeand anywhere. Due to this fact, the use of portable electronic devicessuch as mobile phones, digital cameras, and notebook computers hasrapidly increased. In general, such portable electronic devices use adata storage device which uses a memory device. A data storage device isused to store data to be used in a portable electronic device.

A data storage device using a memory device provides advantages in that,since there is no mechanical driving part, stability and durability areexcellent, an information access speed is high and power consumption issmall. Data storage devices having such advantages include a universalserial bus (USB) memory device, memory cards having various interfaces,a universal flash storage (UFS) device, and a solid-state drive (SSD).

SUMMARY

Various embodiments are directed to a data storage device capable ofeffectively using storage space thereof, and an operating methodthereof.

In an embodiment, a data storage device may include: a nonvolatilememory device including a plurality of dies including a plurality ofword line groups in which a plurality of word lines are grouped; and acontroller configured to control the nonvolatile memory device, thecontroller including a word line health rating logic configured todetermine a health rating of each word line and a health rating of eachword line group based on state information on each of health ratingfactors associated with the plurality of word lines; a memory includinga word line health rating table in which the health rating of each wordline and the health rating of each word line group determined by theword line health rating logic are stored; and a mapping logic configuredto, by referring to the word line health rating table, generate amanagement target logical super block by mapping one word line grouphaving a lowest health rating and a plurality of word line groups havinga highest health rating in the respective dies, and generate a normallogical super block by mapping word line groups having intermediatehealth ratings in the respective dies.

In an embodiment, a method for operating a data storage device includinga nonvolatile memory device including a plurality of dies including aplurality of word line groups in which a plurality of word lines aregrouped and a controller which controls the nonvolatile memory devicemay include: determining a health rating of each word line and a healthrating of each word line group based on state information on each ofhealth rating factors associated with the plurality of word lines, by aword line health rating logic disposed in the controller; storing thehealth rating of each word line and the health rating of each word linegroup, in a word line health rating table included in a memory which isdisposed in the controller; and generating a management target logicalsuper block in which one word line group having a lowest health ratingand a plurality of word line groups having a highest health rating inthe respective dies are mapped, and generating a normal logical superblock in which word line groups having intermediate health ratings inthe respective dies are mapped, by a mapping logic which is disposed inthe controller.

In an embodiment, a memory system may include: at least first and secondmemory devices each including memory cell groups; and a controllersuitable for: determining damage-degrees of the memory cell groups inthe respective memory devices; and controlling, during a writ operation,the memory devices not to store therein XOR parity data for the memorycell groups except for a management target logical super block includingthe memory cell group having a lowest damage-degree in the first memorydevice and the memory cell group having a highest damage-degree in thesecond memory device.

In accordance with the embodiments, as a management target super blockis generated by mapping a word line of which health rating is low and aword line of which health rating is high and a normal super block isgenerated by mapping word lines of which health ratings areintermediate, it is possible to separately manage super blocks of whicherror occurrence rates are high.

Also, since XOR parity is additionally generated and stored whenperforming a write operation for the management target super block andXOR parity is not stored when performing a write operation for thenormal super block, a space for storing XOR parity may be decreased,whereby a space in which user data is to be stored may be increased.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a representation of an example ofthe configuration of a data storage device in accordance with anembodiment.

FIG. 2A is a diagram illustrating a representation of an example of theconfiguration of the nonvolatile memory device shown in FIG. 1.

FIG. 2B is a diagram illustrating a representation of an example of ageneral logical super block (LSB).

FIG. 2C is a diagram illustrating a representation of an example inwhich user data, ECC parity and XOR parity are stored in a certainlogical super block (LSB).

FIG. 3 is a diagram illustrating a representation of an example of aword line health rating table WL HR Table.

FIG. 4A is a diagram illustrating a representation of an example of wordline health rating factors and a grading value.

FIG. 4B is a diagram illustrating a representation of an example of amethod for determining the rating number of a word line based on thegrades of the respective health rating factors of FIG. 4A.

FIG. 4C is a diagram illustrating a representation of an example of arating number range per word line health rating.

FIG. 5 is a diagram illustrating a representation of an example ofgenerating a logical super block by mapping word line groups inaccordance with the embodiment.

FIG. 6A is a diagram illustrating a representation of an example ofgenerating a super word line by mapping word lines in the managementtarget logical super block of FIG. 5.

FIG. 6B is a diagram illustrating a representation of an example ofgenerating and storing XOR parity in a write operation for themanagement target super word line of FIG. 6A.

FIG. 7 is a representation of an example of a flow chart to assist inthe explanation of a method for operating a data storage device inaccordance with an embodiment.

FIG. 8 is a diagram illustrating an example of a data processing systemincluding a solid-state drive (SSD) in accordance with an embodiment.

FIG. 9 is a diagram illustrating an example of a controller illustratedin FIG. 7.

FIG. 10 is a diagram illustrating an example of a data processing systemincluding a data storage apparatus in accordance with an embodiment.

FIG. 11 is a diagram illustrating an example of a data processing systemincluding a data storage apparatus in accordance with an embodiment.

FIG. 12 is a diagram illustrating an example of a network systemincluding a data storage apparatus in accordance with an embodiment.

FIG. 13 is a block diagram illustrating an example of a nonvolatilememory device included in a data storage apparatus in accordance with anembodiment.

DETAILED DESCRIPTION

Hereinafter, a data storage device and an operating method thereof willbe described below with reference to the accompanying drawings throughvarious examples of embodiments.

FIG. 1 is a block diagram illustrating a representation of an example ofthe configuration of a data storage device 10 in accordance with anembodiment. In the present embodiment, the data storage device 10 maystore data to be accessed by a host device (not shown) such as a mobilephone, an MP3 player, a laptop computer, a desktop computer, a gameplayer, a TV, an in-vehicle infotainment system, and so forth. The datastorage device 10 may also be referred to as a memory system.

The data storage device 10 may be manufactured as any one of variouskinds of storage devices according to a host interface meaning atransmission protocol with respect to the host device. For example, thedata storage device 10 may be configured as any one of various kinds ofstorage devices such as a solid state drive, a multimedia card in theform of an MMC, an eMMC, an RS-MMC and a micro-MMC, a secure digitalcard in the form of an SD, a mini-SD and a micro-SD, a universal serialbus (USB) storage device, a universal flash storage (UFS) device, aPersonal Computer Memory Card International Association (PCMCIA) cardtype storage device, a peripheral component interconnection (PCI) cardtype storage device, a PCI express (PCI-E) card type storage device, acompact flash (CF) card, a smart media card, a memory stick, and soforth.

The data storage device 10 may be manufactured as any one among variouskinds of package types. For example, the data storage device 10 may bemanufactured as any one of various kinds of package types such as apackage-on-package (POP), a system-in-package (SIP), a system-on-chip(SOC), a multi-chip package (MCP), a chip-on-board (COB), a wafer-levelfabricated package (WFP) and a wafer-level stack package (WSP).

Referring to FIG. 1, the data storage device 10 may include anonvolatile memory device 100 and a controller 200.

The nonvolatile memory device 100 may operate as the storage medium ofthe data storage device 10. The nonvolatile memory device 100 may beconfigured by any one of various types of nonvolatile memory devicessuch as a NAND flash memory device, a NOR flash memory device, aferroelectric random access memory (FRAM) using a ferroelectriccapacitor, a magnetic random access memory (MRAM) using a tunnelingmagneto-resistive (TMR) layer, a phase change random access memory(PRAM) using a chalcogenide alloy, and a resistive random access memory(RERAM) using a transition metal compound, depending on memory cells.

While it is illustrated in FIG. 1 that the data storage device 10includes one nonvolatile memory device 100, this is an illustrationpurpose only, and it is to be noted that the data storage device 10 mayinclude a plurality of nonvolatile memory devices.

The nonvolatile memory device 100 may include a memory cell array whichhas a plurality of memory cells respectively disposed at regions where aplurality of bit lines (not shown) and a plurality of word lines (notshown) intersect with each other. The memory cell array may include aplurality of planes, and each plane may include a plurality of memoryblocks. Each of the plurality of memory blocks may include a pluralityof pages.

For example, each memory cell of the memory cell array may be a singlelevel cell (SLC) storing one bit, a multi-level cell (MLC) capable ofstoring 2-bit data, a triple level cell (TLC) capable of storing 3-bitdata or a quad level cell (QLC) capable of storing 4-bit data. Thememory cell array may include at least ones among single level cells,multi-level cells, triple level cells and quad level cells. For example,the memory cell array may include memory cells of a 2-dimensionalhorizontal structure or memory cells of a 3-dimensional verticalstructure.

FIG. 2A is a diagram illustrating a representation of an example of theconfiguration of the nonvolatile memory device shown in FIG. 1, FIG. 2Bis a diagram illustrating a representation of an example of a generallogical super block (LSB), and FIG. 2C is a diagram illustrating arepresentation of an example in which user data, ECC parity and XORparity are stored in a certain logical super block (LSB). While it isillustrated in FIGS. 2a to 2c for the sake of convenience in explanationthat the nonvolatile memory device 100 includes four dies D1 to D4, itis to be noted that the number of dies included in the nonvolatilememory device 100 is not specifically limited thereto.

Referring to FIG. 2A, the nonvolatile memory device 100 may include aplurality of dies, that is, first to fourth dies Dl to D4. Each of thedies D1 to D4 may include a plurality of memory blocks, for example,first to n{circumflex over ( )}th memory blocks BLK1 to BLKn. Here, nmay be an integer equal to or greater than 1. While not illustrated inFIG. 2A, each of the dies D1 to D4 may include a plurality of planes,and each of the planes may include a plurality of memory blocks BLK1 toBLKn. For the sake of convenience in explanation and simplification inillustration, illustration of planes is omitted in FIG. 2A.

Referring to FIG. 2B, the first memory blocks BLK1 of the respectivefirst to fourth dies D1 to D4 may be grouped into one physical superblock PSB. For the sake of convenience in explanation, a physical superblock into which the first memory blocks BLK1 of the respective first tofourth dies D1 to D4 are grouped will be referred to as a first physicalsuper block PSB1.

As shown in FIG. 2B, the first physical super block PSB1 may include aplurality of logical super blocks LSB, for example, first tom{circumflex over ( )}th logical super blocks LSB1 to LSBm. Here, m maybe an integer equal to or greater than 1. Each of the first tom{circumflex over ( )}th logical super blocks LSB1 to LSBm may include aplurality of word line groups WLG each of which is configured by aplurality of word lines. For example, the first to m{circumflex over( )}th logical super blocks LSB1 to LSBm may include a plurality offirst word line groups WLG1 to a plurality of m{circumflex over ( )}thword line groups WLGm, respectively.

A configuration example of the first logical super block LSB1 isillustrated in FIG. 2C. While the first logical super block LSB1 isillustrated in FIG. 2C, the configurations of the remaining logicalsuper blocks LSB, that is, the second to m{circumflex over ( )}thlogical super blocks LSB2 to LSBm may also be the same as theconfiguration illustrated in FIG. 2C.

As shown in FIG. 2C, the first logical super block LSB1 may include thefirst word line group WLG1 which is included in the first memory blockBLK1 of each of the first to fourth dies D1 to D4. The first word linegroup WLG1 may include first to i{circumflex over ( )}th word lines WL1to WLi. Here, i may be an integer equal to or greater than 1.

In this disclosure, the expression that a word line stores data will beinterpreted as that memory cells coupled to the word line stores data.For example, in the plurality of first word line groups WLG1 included inthe first logical super block LSB1, there may be stored user data, ECCparity for the user data and XOR parity for the user data and the ECCparity. While it is illustrated in FIG. 2C that XOR parity is stored ineach of the i{circumflex over ( )}th word lines WLi of the respectivefirst word line groups WLG1, it is to be noted that a location and thenumber of word lines where XOR parity is stored in the first word linegroups WLG1 are not specifically limited thereto. The XOR parity may beused for additional correction of an error included in user data whencorrection of the error fails through an ECC parity during a readoperation, and may be generated by XORing corresponding bits withrespect to the user data and the ECC parity stored by each word lineduring a program operation of the user data.

In order to improve recovery capability for the user data stored in thefirst logical super block LSB1, the number of word lines to be XORedshould be decreased. Accordingly, the number of XOR parity to begenerated increases, and a space for storing the user data in the firstlogical super block LSB1 be reduced by a size of space in which theincreased number of XOR parity.

In accordance with an embodiment of the present invention, the XORparity may be generated not for all of word lines but for a partialgroup of word lines to which error correction through the ECC parity areexpected as difficult among all of the word lines.

Referring back to FIG. 1, the controller 200 may include a hostinterface (Host I/F) 210, a processor 220, a memory 230, a word linehealth rating logic 240, a mapping logic 250 and a memory interface(Memory I/F) 260.

The host interface 210 may interface the host device (not shown) and thedata storage device 10. For example, the host interface 210 maycommunicate with the host device by using any one among standardtransmission protocols such as universal serial bus (USB), universalflash storage (UFS), multimedia card (MMC), parallel advanced technologyattachment (PATA), serial advanced technology attachment (SATA), smallcomputer system interface (SCSI), serial attached SCSI (SAS), peripheralcomponent interconnection (PCI) and PCI express (PCI-E) protocols.

The processor 220 may be configured by a micro control unit (MCU) or acentral processing unit (CPU). The processor 220 may process a commandtransmitted from the host device. In order to process the command, theprocessor 220 may drive an instruction or algorithm of a code type, thatis, a software, loaded in the memory 230, and may control internalfunction blocks and the nonvolatile memory device 100.

The memory 230 may be configured by a random-access memory such as adynamic random-access memory (DRAM) or a static random-access memory(SRAM). The memory 230 may store a software to be driven by theprocessor 220. Also, the memory 230 may store the data needed to drivethe software. Namely, the memory 230 may operate as a working memory ofthe processor 220.

The memory 230 may temporarily store data to be transmitted from thehost device to the nonvolatile memory device 100 or data to be read fromthe nonvolatile memory device 100 and be then transmitted to the hostdevice. In other words, the memory 230 may operate as a buffer memory.

The memory 230 may include a word line health rating table WL HR Table.While health rating information on all word lines included in thenonvolatile memory device 100 may be stored in the word line healthrating table WL HR Table, it is to be noted that the embodiment is notspecifically limited thereto. For example, health rating information onall word lines of the nonvolatile memory device 100 may be stored in thenonvolatile memory device 100, and only health rating information on theword lines of a memory block which is currently being used may be loadedin the word line health rating table WL HR Table of the memory 230.

FIG. 3 is a diagram illustrating a representation of an example of theconfiguration of the word line health rating table WL HR Table.Referring to FIG. 3, the word line health rating table WL HR Table mayinclude a health rating HR for each of the first to m{circumflex over( )}th word line groups WLG1 to WLGm included in each of the memoryblocks BLK1 to BLKn of each of the dies D1 to D4 (see FIG. 2A) and ahealth rating HR for each of the first to i{circumflex over ( )}th wordlines WL1 to WLi included in each of the first to m{circumflex over( )}th word line groups WLG1 to WLGm. For example, the health rating HR(for example, ‘A’) of the first word line group WLG1 may correspond tothe average rating of the health ratings HR of the first to i{circumflexover ( )}th word lines WL1 to WLi included in the first word line groupWLG1.

The word line health rating logic 240 may determine a health rating foreach of the word lines of the nonvolatile memory device 100, and maystore the health rating determined per word line, in the word linehealth rating table WL HR Table. The word line health rating logic 240may determine and store the health rating of a word line group based onthe health ratings of word lines included in the word line group.

FIG. 4A is a diagram illustrating a representation of an example of wordline health rating factors and a grading value, FIG. 4B is a diagramillustrating a representation of an example of a method for determiningthe rating number of a word line based on the grades of the healthrating factors of FIG. 4A, and FIG. 4C is a diagram illustrating arepresentation of an example of a rating number range per word linehealth rating.

The word line health rating logic 240 may determine a health rating foreach word line, by using the word line health rating factors shown inFIG. 4A. In FIG. 4A, the word line health rating factors include anerase/write cycle (E/W cycle) of a memory block including the word line,a read pass/fail of memory cells coupled to the word line, a number offail bits related to the memory cells, a program pass/fail of the memorycells and an amount of leakage current of the memory cells. However, itis to be noted that information capable of being used as the word linehealth rating factors is not specifically limited thereto. Since thetechnique of checking state information such as an erase/write cycle(E/W cycle), a read pass/fail, a number of fail bits, a programpass/fail and an amount of leakage current is generally known in the artto which the disclosure pertains, detailed descriptions therefor will beomitted herein.

Referring to FIG. 4A, while grading values are set as ‘100’, ‘75’, ‘50’and ‘25’, this is nothing but a mere illustration. It is apparent tothose skilled in the art that grading ranges may be not necessarilyconverted into a numerical values and may be converted into variousforms. Also, while the grading ranges are divided into four ranges inthe embodiment, it is to be noted that the number of ranges is notspecifically limited thereto.

For example, the erase/write cycle may be divided into a first rangeequal to or less than a1, a second range between a1+1 and b1, a thirdrange between b1+1 and c1 and a fourth range between c1+1 and d1, and agrade may gradually decrease from the first range to the fourth range.Here, a1, b1, c1 and d1 may be integers, and a1<b1<c1<d1.

Each of the read pass/fail and the program pass/fail may include onlytwo ranges of pass and fail. Pass may correspond to a grading value of‘100’, and fail may correspond to a grading value of ‘25’.

The number of fail bits may be divided into a first range equal to orless than a2, a second range between a2+1 and b2, a third range betweenb2+1 and c2 and a fourth range between c2+1 and d2, and a grade maygradually decrease from the first range to the fourth range. Here, a2,b2, c2 and d2 may be integers, and a2<b2<c2<d2.

The amount of leakage current may be divided into a first range equal toor less than a3, a second range between a3+1 and b3, a third rangebetween b3+1 and c3 and a fourth range between c3+1 and d3, and a grademay gradually decrease from the first range to the fourth range. Here,a3, b3, c3 and d3 may include integers and decimals, and a3<b3<c3<d3.

The word line health rating logic 240 may calculate a rating number of aspecific word line, by using the equation shown in FIG. 4B. For example,when assuming that the grades of an erase/write cycle for a memory blockin which the specific word line is included, a read pass/fail of memorycells coupled to the specific word line, a program pass/fail of thememory cells, a number of fail bits related with the memory cells and anamount of leakage current of the memory cells are 75, 100, 100, 75 and75, respectively, the rating number of the specific word line may be 85.The word line health rating logic 240 may determine the health rating HRof the specific word line as ‘A’ by referring to a table showingrelationship between the health rating and a rating number range shownin FIG. 4C.

In this way, the word line health rating logic 240 may s determine ahealth rating HR for each of the word lines of the nonvolatile memorydevice 100, and may store the determined health rating in the word linehealth rating table WL HR Table.

The word line health rating logic 240 may determine and store theaverage rating of the health ratings of the word lines included in eachword line group WLG, as the health rating of the corresponding word linegroup WLG. However, the word line health rating logic 240 may determineand store the health rating HR of a word line group WLG as a healthrating ‘D’, that is, a lowest health rating when the word line group WLGincludes at least one word line of a health rating ‘D,’ that is, alowest health rating.

The mapping logic 250 may generate a management target logical superblock LSB by mapping one-word line group WLG which has a lowest healthrating and a plurality of word line groups WLG which have a highesthealth rating, by referring to the word line health rating table WL HRTable. The mapping logic 250 may generate a normal logical super blockLSB by mapping word line groups WLG which have intermediate healthratings except the highest health rating and the lowest health rating,by referring to the word line health rating table WL HR Table.

FIG. 5 is a diagram illustrating a representation of an example ofgenerating a logical super block by mapping word line groups inaccordance with the embodiment. For the sake of convenience inexplanation, only two logical super blocks are illustrated in FIG. 5.

Referring to FIG. 5, the mapping logic 250 may generate a second logicalsuper block LSB2 by mapping the second word line group WLG2 which isincluded in the first memory block BLK1 of the first die D1 and has thelowest health rating, that is, the health rating ‘D’, and the first wordline group WLG1, the second word line group WLG2 and the second wordline group WLG2 which are included in the first memory blocks BLK1 ofthe second to fourth dies D2 to D4, respectively, and have the highesthealth rating, that is, the health rating ‘A’. Since the second logicalsuper block LSB2 includes a word line group of the lowest health rating(that is, the second word line group WLG2 of the first memory block BLK1of the first die D1), it may be classified into a management targetlogical super block.

The mapping logic 250 may generate a first logical super block LSB1 bymapping the first word line group WLG1, the second word line group WLG2,the first word line group WLG1 and the first word line group WLG1 of thefirst to fourth dies D1 to D4, respectively, which have intermediatehealth ratings except the highest health rating and the lowest healthrating, that is, health ratings ‘B’ and ‘C’. Since the first logicalsuper block LSB1 does not include a word line group WLG of the lowesthealth rating, it may be classified into a normal logical super block.

In a write operation for the second logical super block LSB2 being amanagement target logical super block, the processor 220 may control XORparity for data to be stored in the second logical super block LSB2 andthe ECC parity of the data, to be generated and stored in at least oneword line included in at least one word line group (for example, thesecond word line group WLG2 of the fourth die D4) among the word linegroups WLG included in the second logical super block LSB2. In a writeoperation for the first logical super block LSB1 being a normal logicalsuper block, the processor 220 may control XOR parity for data to bestored in the first logical super block LSB1 and the ECC parity of thedata not to be generated and stored.

That is, the processor 220 may classify the logical super blocks LSBmapped by the mapping logic 250, into a management target logical superblock LSB and a normal logical super block LSB, may generate and storeXOR parity when performing a write operation for the management targetlogical super block LSB, and may not store XOR parity when performing awrite operation for the normal logical super block LSB. In this way, bynot generating and storing XOR parity in all write operations butselectively generating and storing XOR parity depending on the healthrating of a logical super block LSB, a space in which XOR parity is tobe stored may be reduced, and thus, a space capable of storing user datamay be increased.

The mapping logic 250 may generate a management target super word lineSWL by mapping one-word line WL which has the lowest health rating and aplurality of word lines WL which have the highest health rating, amongthe word lines WL1 to WLi of each of the dies D1 to D4 included in themanagement target logical super block LSB. The mapping logic 250 maygenerate a normal super word line SWL by mapping word lines WL whichhave the intermediate health ratings except the highest health ratingand the lowest health rating in the word lines WL1 to WLi of each of thedies D1 to D4 included in the management target logical super block LSB.That is, the mapping logic 250 may generate the management target superword line SWL and the normal super word line SWL from the word linegroups WLG of the management target logical super block LSB.

FIG. 6A is a diagram illustrating a representation of an example ofgenerating a super word line by mapping word lines in the managementtarget logical super block of FIG. 5, and FIG. 6B is a diagramillustrating a representation of an example of generating and storingXOR parity in a write operation for the management target super wordline of FIG. 6A.

Referring to FIG. 6A, the mapping logic 250 may generate a third superword line SWL3 in the second logical super block LSB2 being themanagement target logical super block by mapping a third word line WL3which is included in the second word line group WLG2 of the first memoryblock BLK1 of the first die D1 and has the lowest health rating, thatis, the health rating ‘D’, with the second word line WL2 of the firstword line group WLG1 of the second die D2, the second word line WL2 ofthe second word line group WLG2 of the third die D3 and the third wordline WL3 of the second word line group WLG2 of the fourth die D4 whichhave the highest health rating, that is, the health rating ‘A’. Sincethe third super word line SWL3 includes a word line of the lowest healthrating (that is, the third word line WL3 of the second word line groupWLG2 of the first memory block BLK1 of the first die D1), it may beclassified into a management target super word line.

The mapping logic 250 may generate a first super word line SWL1 bymapping the first word lines WL1 of the first to fourth dies D1 to D4which have the health ratings ‘A’, ‘B’, ‘C’ and ‘B,’ respectively, andmay generate a second super word line SWL2 by mapping the second wordline WL2, the third word line WL3, the third word line WL3 and thesecond word line WL2 of the first to fourth dies D1 to D4, respectively,which have the health ratings ‘A’, ‘B’, ‘B’ and ‘B,’ respectively. Sincethe first and second super word lines SWL1 and SWL2 do not include aword line of the lowest health rating, that is, the health rating ‘D,’they may be classified into normal super word lines.

As shown in FIG. 6B, in a write operation for the third super word lineSWL3 being the management target super word line, the processor 220 maycontrol XOR parity for data to be stored in the third super word lineSWL3 and the ECC parity of the data, to be generated and stored in atleast one-word line (for example, the third word line WL3 of the fourthdie D4) among the word lines WL included in the third super word lineSWL3. In write operations for the first and second super word lines SWL1and SWL2 being normal super word lines, the processor 220 may controlXOR parity for data to be stored in the first and second super wordlines SWL1 and SWL2 and the ECC parity of the data, not to be stored.

FIG. 7 is a representation of an example of a flow chart to assist inthe explanation of a method for operating the data storage device 10 inaccordance with an embodiment. In explaining the method for operatingthe data storage device 10 in accordance with the embodiment, withreference to FIG. 7, reference may be made to FIGS. 1 to 6B.

At step S710, the word line health rating logic 240 of the controller200 may determine a health rating for each word line based on stateinformation on each of health rating factors for the word lines includedin the nonvolatile memory device 100. The word line health rating logic240 may perform the operation of determining a health rating for eachword line, by the control of the processor 220. Since detaileddescriptions were made above for the kinds of the health rating factorsand determination of a health rating for each word line by using thehealth rating factors, further descriptions thereof will be omittedherein.

At step S720, the word line health rating logic 240 may determine ahealth rating for each of the word line groups WLG1 to WLGi included ineach of the memory blocks BLK1 to BLKn of each of the dies D1 to D4 ofthe nonvolatile memory device 100, based on the health rating for eachword line determined at the step S710. The health rating of each wordline group WLG may correspond to the average of the health ratings ofthe word lines WL included in the corresponding word line group WLG. Theword line health rating logic 240 may store a health rating for eachword line WL determined at the step S710 and a health rating for eachword line group WLG determined at the step S720, in the word line healthrating table WL HR Table of the memory 230.

At step S730, the mapping logic 250 of the controller 200 may generate amanagement target logical super block LSB by mapping one-word line groupWLG which has a lowest health rating and a plurality of word line groupsWLG which have a highest health rating, by referring to the word linehealth rating table WL HR Table of the memory 230. The mapping logic 250may generate a normal logical super block LSB by mapping word linegroups WLG which have intermediate health ratings except the highesthealth rating and the lowest health rating. The mapping logic 250 maygenerate a logical super block by mapping word line groups by thecontrol of the processor 220. The logical super block may includeone-word line group per each of the dies D1 to D4.

At step S740, the mapping logic 250 may generate a management targetsuper word line SWL by mapping one word line WL which has the lowesthealth rating, that is, the health rating ‘D,’ and a plurality of wordlines WL which have the highest health rating, that is, the healthrating ‘A,’ among the word lines WL of each of the dies D1 to D4included in the management target logical super block LSB. The mappinglogic 250 may generate a normal super word line SWL by mapping wordlines WL which have health ratings except the lowest health rating. Themapping logic 250 may generate a super word line through mapping wordlines by the control of the processor 220. The super word line mayinclude one-word line per each of the dies D1 to D4.

At step S750, in a write operation for the management target logicalsuper block LSB, the processor 220 may generate XOR parity for data tobe stored in the management target logical super block LSB and the ECCparity of the data, and may control the XOR parity to be stored in atleast one word line included in at least one word line group WLG amongthe word line groups WLG included in the management target logical superblock LSB.

Also, in a write operation for the management target super word lineSWL, the processor 220 may generate XOR parity for data to be stored inthe management target super word line SWL and the ECC parity of thedata, and may control the XOR parity to be stored in at least one-wordline included in the management target super word line SWL.

In a write operation for the normal logical super block LSB, theprocessor 220 may control XOR parity for data to be stored in the normallogical super block LSB and the ECC parity of the data, not to bestored. Further, in a write operation for the normal super word lineSWL, the processor 220 may control XOR parity for data to be stored inthe normal super word line SWL and the ECC parity of the data, not to bestored.

Referring back to FIG. 1, the memory interface 260 may control thenonvolatile memory device 100 according to the control of the processor220. The memory interface 260 may also be referred to as a memorycontroller. The memory interface 260 may provide control signals to thenonvolatile memory device 100. The control signals may include acommand, an address and so forth, for controlling the nonvolatile memorydevice 100. The memory interface 260 may provide data to the nonvolatilememory device 100 or may be provided with data from the nonvolatilememory device 100. The memory interface 260 may be coupled with thenonvolatile memory device 100 through a channel CH including one or moresignal lines.

FIG. 8 is a diagram illustrating an example of a data processing systemincluding a solid-state drive (SSD) in accordance with an embodiment.Referring to FIG. 8, a data processing system 2000 may include a hostapparatus 2100 and a SSD 2200.

The SSD 2200 may include a controller 2210, a buffer memory device 2220,non-volatile memory devices 2231 to 223 n, a power supply 2240, a signalconnector 2250, and a power connector 2260.

The controller 2210 may control an overall operation of the SSD 2220.

The buffer memory device 2220 may temporarily store data to be stored inthe nonvolatile memory devices 2231 to 223 n. The buffer memory device2220 may temporarily store data read from the nonvolatile memory devices2231 to 223 n. The data temporarily stored in the buffer memory device2220 may be transmitted to the host apparatus 2100 or the nonvolatilememory devices 2231 to 223 n according to control of the controller2210.

The nonvolatile memory devices 2231 to 223 n may be used as a storagemedium of the SSD 2200. The nonvolatile memory devices 2231 to 223 n maybe coupled to the controller 2210 through a plurality of channels CH1 toCHn. One or more nonvolatile memory devices may be coupled to onechannel. The nonvolatile memory devices coupled to the one channel maybe coupled to the same signal bus and the same data bus.

The power supply 2240 may provide power PWR input through the powerconnector 2260 to the inside of the SSD 2200. The power supply 2240 mayinclude an auxiliary power supply 2241. The auxiliary power supply 2241may supply the power so that the SSD 2200 is normally terminated evenwhen sudden power-off occurs. The auxiliary power supply 2241 mayinclude large capacity capacitors capable of charging the power PWR.

The controller 2210 may exchange a signal SGL with the host apparatus2100 through the signal connector 2250. The signal SGL may include acommand, an address, data, and the like. The signal connector 2250 maybe configured of various types of connectors according to an interfacingmethod between the host apparatus 2100 and the SSD 2200.

FIG. 9 is a diagram illustrating an example of the controller 2210 ofFIG. 8. Referring to FIG. 9, the controller 2210 may include a hostinterface unit 2211, a control unit 2212, a random-access memory (RAM)2213, an error correction code (ECC) unit 2214, and a memory interfaceunit 2215.

The host interface unit 2211 may perform interfacing between the hostapparatus 2100 and the SSD 2200 according to a protocol of the hostapparatus 2100. For example, the host interface unit 2211 maycommunicate with the host apparatus 2100 through any one among a securedigital protocol, a universal serial bus (USB) protocol, a multimediacard (MMC) protocol, an embedded MMC (eMMC) protocol, a personalcomputer memory card international association (PCMCIA) protocol, aparallel advanced technology attachment (DATA) protocol, a serialadvanced technology attachment (SATA) protocol, a small computer systeminterface (SCSI) protocol, a serial attached SCSI (SAS) protocol, aperipheral component interconnection (PCI) protocol, a PCI Express(PCI-E) protocol, and a universal flash storage (UFS) protocol. The hostinterface unit 2211 may perform a disc emulation function that the hostapparatus 2100 recognizes the SSD 2200 as a general-purpose data storageapparatus, for example, a hard disc drive HDD.

The control unit 2212 may analyze and process the signal SGL input fromthe host apparatus 2100. The control unit 2212 may control operations ofinternal functional blocks according to firmware and/or software fordriving the SDD 2200. The RAM 2213 may be operated as a working memoryfor driving the firmware or software.

The ECC unit 2214 may generate parity data for the data to betransferred to the nonvolatile memory devices 2231 to 223 n. Thegenerated parity data may be stored in the nonvolatile memory devices2231 to 223 n together with the data. The ECC unit 2214 may detecterrors for data read from the nonvolatile memory devices 2231 to 223 nbased on the parity data. When detected errors are within a correctablerange, the ECC unit 2214 may correct the detected errors.

The memory interface unit 2215 may provide a control signal such as acommand and an address to the nonvolatile memory devices 2231 to 223 naccording to control of the control unit 2212. The memory interface unit2215 may exchange data with the nonvolatile memory devices 2231 to 223 naccording to control of the control unit 2212. For example, the memoryinterface unit 2215 may provide data stored in the buffer memory device2220 to the nonvolatile memory devices 2231 to 223 n or provide dataread from the nonvolatile memory devices 2231 to 223 n to the buffermemory device 2220.

FIG. 10 is a diagram illustrating an example of a data processing systemincluding a data storage apparatus in accordance with an embodiment.Referring to FIG. 10, a data processing system 3000 may include a hostapparatus 3100 and a data storage apparatus 3200.

The host apparatus 3100 may be configured in a board form such as aprinted circuit board (PCB). Although not shown in FIG. 10, the hostapparatus 3100 may include internal functional blocks configured toperform functions of the host apparatus 3100.

The host apparatus 3100 may include a connection terminal 3110 such as asocket, a slot, or a connector. The data storage apparatus 3200 may bemounted on the connection terminal 3110.

The data storage apparatus 3200 may be configured in a board form suchas a PCB. The data storage apparatus 3200 may refer to a memory moduleor a memory card. The data storage apparatus 3200 may include acontroller 3210, a buffer memory device 3220, nonvolatile memory devices3231 to 3232, a power management integrated circuit (PMIC) 3240, and aconnection terminal 3250.

The controller 3210 may control an overall operation of the data storageapparatus 3200. The controller 3210 may be configured to have the sameconfiguration as the controller 2210 illustrated in FIG. 9.

The buffer memory device 3220 may temporarily store data to be stored inthe nonvolatile memory devices 3231 and 3232. The buffer memory device3220 may temporarily store data read from the nonvolatile memory devices3231 and 3232. The data temporarily stored in the buffer memory device3220 may be transmitted to the host apparatus 3100 or the nonvolatilememory devices 3231 and 3232 according to control of the controller3210.

The nonvolatile memory devices 3231 and 3232 may be used as a storagemedium of the data storage apparatus 3200.

The PMIC 3240 may provide power input through the connection terminal3250 to the inside of the data storage apparatus 3200. The PMIC 3240 maymanage the power of the data storage apparatus 3200 according to controlof the controller 3210.

The connection terminal 3250 may be coupled to the connection terminal3110 of the host apparatus 3100. A signal such as a command, an address,and data and power may be transmitted between the host apparatus 3100and the data storage apparatus 3200 through the connection terminal3250. The connection terminal 3250 may be configured in various formsaccording to an interfacing method between the host apparatus 3100 andthe data storage apparatus 3200. The connection terminal 3250 may bearranged in any one side of the data storage apparatus 3200.

FIG. 11 is a diagram illustrating an example of a data processing systemincluding a data storage apparatus in accordance with an embodiment.Referring to FIG. 11, a data processing system 4000 may include a hostapparatus 4100 and a data storage apparatus 4200.

The host apparatus 4100 may be configured in a board form such as a PCB.Although not shown in FIG. 11, the host apparatus 4100 may includeinternal functional blocks configured to perform functions of the hostapparatus 4100.

The data storage apparatus 4200 may be configured in a surface mountingpackaging form. The data storage apparatus 4200 may be mounted on thehost apparatus 4100 through a solder ball 4250. The data storageapparatus 4200 may include a controller 4210, a buffer memory device4220, and a nonvolatile memory device 4230.

The controller 4210 may control an overall operation of the data storageapparatus 4200. The controller 4210 may be configured to have the sameconfiguration as the controller 2210 illustrated in FIG. 9.

The buffer memory device 4220 may temporarily store data to be stored inthe nonvolatile memory device 4230. The buffer memory device 4220 maytemporarily store data read from the nonvolatile memory device 4230. Thedata temporarily stored in the buffer memory device 4220 may betransmitted to the host apparatus 4100 or the nonvolatile memory device4230 through control of the controller 4210.

The nonvolatile memory device 4230 may be used as a storage medium ofthe data storage apparatus 4200.

FIG. 12 is a diagram illustrating an example of a network system 5000including a data storage apparatus in accordance with an embodiment.Referring to FIG. 12, the network system 5000 may include a serversystem 5300 and a plurality of client systems 5410 to 5430 which arecoupled through a network 5500.

The server system 5300 may serve data in response to requests of theplurality of client systems 5410 to 5430. For example, the server system5300 may store data provided from the plurality of client systems 5410to 5430. In another example, the server system 5300 may provide data tothe plurality of client systems 5410 to 5430.

The server system 5300 may include a host apparatus 5100 and a datastorage apparatus 5200. The data storage apparatus 5200 may beconfigured of the data storage apparatus 10 of FIG. 1, the data storageapparatus 2200 of FIG. 8, the data storage apparatus 3200 of FIG. 10, orthe data storage apparatus 4200 of FIG. 11.

FIG. 13 is a block diagram illustrating an example of a nonvolatilememory device included in a data storage apparatus in accordance with anembodiment. Referring to FIG. 13, a nonvolatile memory device 100 mayinclude a memory cell array 110, a row decoder 120, a column decoder140, a data read/write block 130, a voltage generator 150, and a controllogic 160.

The memory cell array 110 may include memory cells MC arranged inregions in which word lines WL1 to WLm and bit lines BL1 to BLn cross toeach other.

The row decoder 20 may be coupled to the memory cell array 110 throughthe word lines WL1 to WLm. The row decoder 120 may operate throughcontrol of the control logic 160. The row decoder 120 may decode anaddress provided from an external apparatus (not shown). The row decoder120 may select and drive the word lines WL1 to WLm based on a decodingresult. For example, the row decoder 120 may provide a word line voltageprovided from the voltage generator 150 to the word lines WL1 to WLm.

The data read/write block 130 may be coupled to the memory cell array110 through the bit lines BL1 to BLn. The data read/write block 130 mayinclude read/write circuits RW1 to RWn corresponding to the bit linesBL1 to BLn. The data read/write block 130 may operate according tocontrol of the control logic 160. The data read/write block 130 mayoperate as a write driver or a sense amplifier according to an operationmode. For example, the data read/write block 130 may operate as thewrite driver configured to store data provided from an externalapparatus in the memory cell array 110 in a write operation. In anotherexample, the data read/write block 130 may operate as the senseamplifier configured to read data from the memory cell array 110 in aread operation.

The column decoder 140 may operate though control of the control logic160. The column decoder 140 may decode an address provided from anexternal apparatus (not shown). The column decoder 140 may couple theread/write circuits RW1 to RWn of the data read/write block 130corresponding to the bit lines BL1 to BLn and data input/output (I/O)lines (or data I/O buffers) based on a decoding result.

The voltage generator 150 may generate voltages used for an internaloperation of the nonvolatile memory device 100. The voltages generatedthrough the voltage generator 150 may be applied to the memory cells ofthe memory cell array 110. For example, a program voltage generated in aprogram operation may be applied to word lines of memory cells in whichthe program operation is to be performed. In another example, an erasevoltage generated in an erase operation may be applied to well regionsof memory cells in which the erase operation is to be performed. Inanother example, a read voltage generated in a read operation may beapplied to word lines of memory cells in which the read operation is tobe performed.

The control logic 160 may control an overall operation of thenonvolatile memory device 100 based on a control signal provided from anexternal apparatus. For example, the control logic 160 may control anoperation of the nonvolatile memory device 100 such as a read operation,a write operation, an erase operation of the nonvolatile memory device100.

The above embodiments of the present disclosure are illustrative and notlimitative. Various alternatives and equivalents are possible. Theexamples of the embodiments are not limited by the embodiments describedherein. Nor is the present disclosure limited to any specific type ofsemiconductor device. Other additions, subtractions, or modificationsare obvious in view of the present disclosure and are intended to fallwithin the scope of the appended claims.

What is claimed is:
 1. A data storage device comprising: a nonvolatilememory device including a plurality of dies including a plurality ofword line groups in which a plurality of word lines are grouped; and acontroller configured to control the nonvolatile memory device, thecontroller comprising: a word line health rating logic configured todetermine a health rating of each word line and a health rating of eachword line group based on state information on each of health ratingfactors associated with the plurality of word lines; and a mapping logicconfigured to generate a management target logical super block bymapping word line groups in the respective dies, based on the healthrating of each word line group, wherein only one-word line group amongthe mapped word line groups of the management target logical super blockhas a lowest health rating.
 2. The data storage device according toclaim 1, wherein the mapped word line groups of the management targetlogical super block further include word line groups having healthratings higher than a health rating of the one-word line group.
 3. Thedata storage device according to claim 1, wherein each of the word linegroups included in the management target logical super block correspondsto each of the plurality of dies.
 4. The data storage device accordingto claim 1, wherein the word line health rating logic determines anaverage rating of health ratings of word lines included in each wordline group, as the health rating of each word line group.
 5. The datastorage device according to claim 1, wherein the health rating factorsinclude an erase/write cycle for a memory block in which each word lineis included, a read pass/fail, a program pass/fail, a number of failbits and an amount of leakage current for each word line.
 6. The datastorage device according to claim 1, wherein the controller generatesXOR parity for data to be stored in the management target logical superblock and ECC parity of the data, when performing a write operation forthe management target logical super block, and controls the nonvolatilememory device to store the generated XOR parity in a word line selectedamong word lines included in the management target logical super block.7. The data storage device according to claim 1, wherein the mappinglogic generates a normal logical super block by mapping word line groupshaving intermediate health ratings in the respective dies, based on thehealth rating of each word line group.
 8. The data storage deviceaccording to claim 7, wherein the controller does not generate XORparity for data to be stored in the normal logical super block and ECCparity of the data, when performing a write operation for the normallogical super block, and controls the nonvolatile memory device to storeonly the data and the ECC parity of the data in the normal logical superblock.
 9. The data storage device according to claim 1, wherein themapping logic generates a management target super word line by mappingsome of word lines included in the management target logical superblock, based on the health rating of each word line, and wherein onlyone-word line among the word lines included in the management targetsuper word line has a lowest health rating.
 10. The data storage deviceaccording to claim 9, wherein the word lines of the management targetsuper word line further include word lines having health ratings higherthan a health rating of the one-word line.
 11. The data storage deviceaccording to claim 9, wherein each of the word lines included in themanagement target super word line corresponds to each of the pluralityof dies.
 12. A method for operating a data storage device including anonvolatile memory device including a plurality of dies including aplurality of word line groups in which a plurality of word lines aregrouped, the method comprising: determining a health rating of each wordline and a health rating of each word line group based on stateinformation on each of health rating factors associated with theplurality of word lines; and generating a management target logicalsuper block by mapping some of word line groups in the respective dies,based on the health rating of each word line group, wherein onlyone-word line group among the mapped word line groups of the managementtarget logical super block has a lowest health rating.
 13. The methodaccording to claim 12, wherein the generating of the management targetlogical super block includes mapping the one-word line group having thelowest health rating and word line groups having health ratings higherthan a health rating of the one-word line group.
 14. The methodaccording to claim 12, further comprising: generating XOR parity fordata to be stored in the management target logical super block and ECCparity of the data, when a write request for the management targetlogical super block is received; and storing the data, the ECC parityand the XOR parity in the management target logical super block.
 15. Themethod according to claim 12, further comprising: generating a normallogical super block by mapping word line groups having intermediatehealth ratings in the respective dies, based on the health rating ofeach word line groups.
 16. The method according to claim 15, furthercomprising: storing data and ECC parity of the data in the normallogical super block, when a write request for the normal logical superblock is received.
 17. The method according to claim 12, furthercomprising: generating a management target super word line by mappingsome of word lines included in the management target logical superblock, based on the health rating of each word line, wherein onlyone-word line among the word lines included in the management targetsuper word line has a lowest health rating.
 18. The method according toclaim 17, wherein the generating of the management target super wordline includes mapping the one-word line having the lowest health ratingand word lines having health ratings higher than a health rating of theone-word line.
 19. The method according to claim 12, wherein the healthrating of each word line group is determined as an average rating ofhealth ratings of corresponding word lines.
 20. The method according toclaim 12, wherein the health rating factors include an erase/write cyclefor a memory block in which each word line is included, a readpass/fail, a program pass/fail, a number of fail bits and an amount ofleakage current for each word line.